iT邦幫忙

2024 iThome 鐵人賽

DAY 18
0
Python

30天Python學習之旅系列 第 18

Day 18 : 模組簡單實作 ( 密碼產生器 & 城市氣溫查詢)

  • 分享至 

  • xImage
  •  

今天是我學習Python的第18天,隨著日子已經要進入尾聲了,所以我決定不再繼續發我學習Python的基礎內容,而是直接進行實作演練,這樣才能夠更有效地判斷我是否有學會這個程式語言,且能實際運用。但Python其他的尚未發出來的學習進度,我還是會持續努力跟進,會以實作演練的方式同步進行。

密碼產生器

先給 Python 一些數字(0到9)與英文字母(大小寫皆可以)作為材料,再用 shuffle (洗牌)語法將其順序打亂,最後從中選取所需幾位數的密碼。
Random : 在程式中生成隨機數或從序列中隨機挑選元素。

  • digits : 產生0到9的數字
  • ascii_letters : 產生英文大小寫的字母

範例(已打亂順序的字母表):
https://ithelp.ithome.com.tw/upload/images/20241001/20169078h4i7YCmVXG.png

用int語法把輸入的字串轉成整數
目前資料類型仍為清單https://ithelp.ithome.com.tw/upload/images/20241001/2016907856BDx4w9Sg.png
使用join語法轉成字串,不但能自己決定密碼位數且自動產生一組隨機密碼
https://ithelp.ithome.com.tw/upload/images/20241001/201690781a4Q0DHWNj.png

網路上的模組(使用第三方套件)下載,在學習Day 12 : 模組與套件的使用有提及。不過在網路上搜尋Python package可以找到更多模組和套件提供我們下載使用,可以說是非常地方便,能減少許多程式設計的時間。

城市氣溫查詢

首先要先安裝一個requests模組,這個模組可以用來擷取網路伺服器的資料,在這之前就已經安裝過所以就不再多論述。

第一步驟 : 進入open weather這個網站並註冊,它提供了全世界各地的天氣資訊。
網址:https://openweathermap.org/
第二步驟 : 打開API頁面,進入Current Weather Data(目前天氣資訊)
https://ithelp.ithome.com.tw/upload/images/20241001/20169078qNIVoYUJrq.png
第三步驟 : 點 Built-in API request by city name(使用城市名稱查詢),就可以看到網址提供的語法連結並複製。
https://ithelp.ithome.com.tw/upload/images/20241001/20169078T0431FVuRk.png
第四步驟 : 複製貼上到Pycharm形成字串。
https://ithelp.ithome.com.tw/upload/images/20241001/20169078pmutD7OAIM.png
第五步驟 : 從天氣網站中取得API key
https://ithelp.ithome.com.tw/upload/images/20241001/20169078M2033FHeP2.png
第六步驟 : 記得導入 requests 模組,並使用get語法來送出網址,
最後把資料格式轉成字串(text語法)或用json語法將資料轉成Dictionary,若轉成字典,就能藉由字典的標題輸入取得資料。
此時取得的問度資料為華氏溫度:
https://ithelp.ithome.com.tw/upload/images/20241002/20169078DYRyDvdUY6.png
再減掉絕對零度值即可獲得我們熟悉的攝氏溫度:
https://ithelp.ithome.com.tw/upload/images/20241002/201690784NZelMCBFA.png
最後一步驟 : 改成能查詢別的城市的城市語法,以及四捨五入取溫度整數。
https://ithelp.ithome.com.tw/upload/images/20241002/201690789H4M5Fc0DM.png


上一篇
Day 17 : 正規表示式
下一篇
Day 19 : 類別簡單實作 ( 回合制戰鬥遊戲)
系列文
30天Python學習之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言